perm filename REFBUG[POX,WD] blob
sn#397680 filedate 1978-11-22 generic text, type T, neo UTF8
\|\\; Define Brick Character
\;
\M0FIX25;\; fixed font
\;
\⊂'000040;\; VERREM - REM's syntax for defining macros with args
\⊂'000400;\; VERRHT - modified way to pass args with nest chars
\;
\8OBIND(N,A)[\oPSH[⊗A⊗]\∂⊗N⊗←PSH;]\;
\8OPOP(N)[\∂PSH←⊗N⊗;\∂←PSH;]\;
\;
\8FMTREF(I,TXT)[\QL\Qt\P\!OBIND(AA,(0⊗I⊗));\;
\ ;\1AA;\→t\2AA;\+t\→t\+L\→L\-t\→.⊗I⊗\J⊗TXT⊗\.
\ ;\!OPOP(AA);\p\qt\qL]\;
\;
\!FMTREF(PACNET,(Robert Melancton Metcalfe, "Packet Communication" MIT Project
MAC TR-114, Dec 1973));\;
\|\\; Define Brick Character
\;
\M0FIX25;\; fixed font
\;
\⊂'000040;\; VERREM - REM's syntax for defining macros with args
\⊂'000400;\; VERRHT - modified way to pass args with nest chars
\;
\8OBIND(N,A)[\oPSH[⊗A⊗]\∂⊗N⊗←PSH;]\;
\8OPOP(N)[\∂PSH←⊗N⊗;\∂←PSH;]\;
\;
\8FMTREF(I,TXT)[\QL\Qt\P\!OBIND(AA,(0⊗I⊗));\;
\N\ ;\1AA;\→t\2AA;\+t\→t\+L\→L\-t\→.⊗I⊗\J⊗TXT⊗\.
\ ;\←=100;\→t\+L\→L\-t\→.⊗I⊗\J⊗TXT⊗\.
\ ;\!OPOP(AA);\p\qt\qL]\;
\;
\!FMTREF(PACNET,(Robert Melancton Metcalfe, "Packet Communication" MIT Project
MAC TR-114, Dec 1973));\;
\|\\; Define Brick Character
\;
\M0FIX25;\; fixed font
\;
\⊂'000040;\; VERREM - REM's syntax for defining macros with args
\⊂'000400;\; VERRHT - modified way to pass args with nest chars
\;
\8OBIND(N,A)[\oPSH[⊗A⊗]\∂⊗N⊗←PSH;]\;
\8OPOP(N)[\∂PSH←⊗N⊗;\∂←PSH;]\;
\;
\8FMTREF(I,TXT)[\N
\ ;\P\QL\QT\N
\ ;\←=100;\+L\→L
\ ;\←=100;\¬L\→.[⊗I⊗]\N
\ ;\J⊗TXT⊗\.
\N\ ;\!OBIND(AA,(0\"[⊗I⊗\"] ));\N
\N\ ;\1AA;\→T\2AA;\+T\→T\+L\→L\-T\→.[⊗I⊗]\J⊗TXT⊗\.
\N\ ;\1AA;\→T\2AA;\+T\←=100;\→T\+L\→L\-T\→.[⊗I⊗]\J⊗TXT⊗\.
\N\ ;\←=100;\→T\+L\→L\-T\→.[⊗I⊗]\J⊗TXT⊗\.
\N\ ;\!OPOP(AA);\N
\ ;\qT\qL\p]\;
\;
\!FMTREF(PACNET,(Robert Melancton Metcalfe, "Packet Communication" MIT Project
MAC TR-114, Dec 1973));\;
\|\\; Define Brick Character
\;
\;
\; Define Fonts
\;
\M0FIX25;\; fixed font
\M1BAXL30;\; light
\M2BAXI30;\; italic
\M3BAXB30;\; bold
\M4CLAR40;\; title font
\M5BASL35;\; subtitle font
\M6BDJ20;\; superscript and subscript font
\M7ZERO30;\; accents
\M8GRFX25;\; graphics font
\M9CORON;\; font for names of sets
\MAMATH30;\; mathematical font
\;\MBFIX20;\; small fixed font
\MCGRK30;\; Greek
\MDCYR30;\; Cyrillic for the word samizdat
\;
\F0\; select font 0
\;
\;
\; Page Dimensions
\;
\←=200;\→L\; left margin
\←=1510;\→R\; right margin
\e=2200;\; set length of page
\T=200;\; set top of page
\B=2000;\; set bottom of page
\;
\; Assembly Flags
\;
\∞SUMMARYFLAG[\←=0;]\; print summaries
\∞REMARKFLAG[\←=1;]\; print remarks
\∞EDNOTEFLAG[\←=1;]\; print notes to reviewer
\∞RUNTITFLAG[\←=1;]\; print running titles
\;
\;
\; Special Feature Bits
\;
\⊂'000001;\; VERHHR - H and h height of font pseudo-register
\⊂'000004;\; VERSIM - linefeed simulator
\⊂'000010;\; VERSGK - double gap after period and colon
\⊂'000040;\; VERREM - REM's syntax for defining macros with args
\⊂'000100;\; VEREVE - turn on EVERYPAGE macro
\⊂'000400;\; VERRHT - modified way to pass args with nest chars
\⊂'010000;\; VERPAG - automatic page change
\⊂'100000;\; VERESC - in body of macro, \ converted to <brick> token
\⊂'200000;\; VERXX1 - correct output overlay
\;
\;
\@NUMER.POX[POX,WD];\; read in numeric macros
\;
\@STRING.POX[POX,WD];\; read in file of string macros
\;
\@ROMLET.POX[POX,WD];\; read letter and roman numeral coversions
\;
\@DATIME.POX[POX,WD];\; read in date and time macros
\;
\!SETUPDAYTIME;\; setup date and time data
\;
\∞EVERYPAGE[\N
\ ;\P\N save ac
\ ;\!INCR(PAGNUM);\N increment global page #
\ ;\←U\+=1;\→U\N increment local page #
\ ;\!INSECFLAG;\?SECPAGNUM(\DS,\DU);\N
\ ;\N print sec and pag nums ?
\ ;\oABSPAG{0 - \!PAGNUM;}\N global page # overlay
\ ;\&DATPAG←DATIM&ABSPAG;\N join it with date overlay
\ ;\WDATPAG,=200;=2150;\N print date and page overlay
\ ;\∂←ABSPAG;\N expunge abs page overlay
\ ;\p]\; restore ac
\;
\;
\8SECPAGNUM(SEC,PAG)[\N
\ ;\oPAGNO{0\!ROMAN(⊗SEC⊗);-⊗PAG⊗}\N
\ ;\N construct local page overlay
\ ;\WPAGNO,=800;=2100;\N print local page overlay
\ ;\!EVAL((\∂←)PAGNO(;));]\; expunge local page overlay
\;
\;
\@MISMAC.POX[POX,WD];\; load miscellaneous macros
\;
\@SECT.POX[POX,WD];\; read in section and subsection stuff
\;
\@BUG.POX[POX,WD];\; read in cit and ref stuff
\;
\∞CURCIT[0]\;
\;
\<=1;CONTEN.TMP;\;
\;
\!EVERYPAGE;\;
\,
\|\\; Define Brick Character
\;
\⊂'000040;\; VERREM - REM's syntax for defining macros with args
\;
\ ;\←'0;\→G\; footnote numbers in notes
\ ;\←'0;\→N\; footnote numbers in text
\; Citation and Reference Macros
\;
\8CIT1(1)[\"[\!CIT(⊗1⊗);\"]]\;
\8CIT2(1,2)[\"[CIT(⊗1⊗);,CIT(⊗2⊗);\"]]\;
\8CIT3(1,2,3)[\"[CIT(⊗1⊗);,CIT(⊗2⊗);,CIT(⊗3⊗);\"]]\;
\8CIT4(1,2,3,4)[\N
\ ;\"[CIT(⊗1⊗);,CIT(⊗2⊗);,CIT(⊗3⊗);,CIT(⊗4⊗);\"]]\;
\8CIT5(1,2,3,4,5)[\N
\ ;\"[CIT(⊗1⊗);,CIT(⊗2⊗);,CIT(⊗3⊗);,CIT(⊗4⊗);,CIT(⊗5⊗);\"]]\;
\8CIT6(1,2,3,4,5,6)[\"[CIT(⊗1⊗);,CIT(⊗2⊗);,CIT(⊗3⊗);,CIT(⊗4⊗);,CIT(⊗5⊗);,CIT(⊗6⊗);\"]]\;
\8CIT7(1,2,3,4,5,6,7)[\N
\ ;\"[CIT(⊗1⊗);,CIT(⊗2⊗);,CIT(⊗3⊗);,CIT(⊗4⊗);,CIT(⊗5⊗);,CIT(⊗6⊗);,CIT(⊗7⊗);\"]]\;
\8CIT8(1,2,3,4,5,6,7,8)[\N
\ ;\"[CIT(⊗1⊗);,CIT(⊗2⊗);,CIT(⊗3⊗);,CIT(⊗4⊗);,CIT(⊗5⊗);,CIT(⊗6⊗);,CIT(⊗7⊗);,CIT(⊗8⊗);\"]]\;
\8CIT9(1,2,3,4,5,6,7,8,9)[\N
\ ;\"[⊗1⊗,CIT(⊗2⊗);,CIT(⊗3⊗);,CIT(⊗4⊗);,CIT(⊗5⊗);,CIT(⊗6⊗);,CIT(⊗7⊗);,CIT(⊗8⊗);,CIT(⊗9⊗);\"]]\;
\;
\8OBIND(N,A)[\oPSH[⊗A⊗]\∂⊗N⊗←PSH;]\;
\8OPOP(N)[\∂PSH←⊗N⊗;\∂←PSH;]\;
\;
\;\8FMTREF(I,TXT)[\QL\Qt\P\!OBIND(AA,(0⊗I⊗));\;
\;\ ;\1AA;\→t\2AA;\+t\→t\+L\→L\-t\→.⊗I⊗\J⊗TXT⊗\.
\;\ ;\!OPOP(AA);\p\qt\qL]\;
\;
\8FMTREF(I,TXT)[\QL\Qt\P\!OBIND(AA,(0⊗I⊗));\;
\ ;\←=100;\→t\+L\→L\-t\→.⊗I⊗\J⊗TXT⊗\.
\ ;\!OPOP(AA);\p\qt\qL]\;
\;
\8MKREFTAG(I)[\N
\ ;\P\N
\ ;\←=⊗I⊗;\N
\ ;\→T\N
\ ;\←=9;\N
\ ;\¬T\N
\ ;\!COMPAC;\N
\ ;\?SPACE;\N
\ ;[⊗I⊗] \N
\ ;\p]\;
\;
\;\8FMTREF(I,TXT)[\N
\;\ ;\P\QL\QT\N
\;\ ;\←=100;\+L\→L
\;\ ;\←=100;\¬L\→.[⊗I⊗]\N
\;\ ;\J⊗TXT⊗\.
\;\N\ ;\!OBIND(AA,(0\"[⊗I⊗\"] ));\N
\;\N\ ;\1AA;\→T\2AA;\+T\→T\+L\→L\-T\→.[⊗I⊗]\J⊗TXT⊗\.
\;\N\ ;\1AA;\→T\2AA;\+T\←=100;\→T\+L\→L\-T\→.[⊗I⊗]\J⊗TXT⊗\.
\;\N\ ;\←=100;\→T\+L\→L\-T\→.[⊗I⊗]\J⊗TXT⊗\.
\;\N\ ;\!OPOP(AA);\N
\;\ ;\qT\qL\p]\;
\;
\8REF(NAME,TEXT)[\N
\ ;\!EVAL((\∞)⊗NAME⊗(CITNUM[0]));\N init citation number
\ ;\!EVAL((\∞)⊗NAME⊗(REFTEXT[⊗TEXT⊗]));\N store reference text
\ ;]\;
\8CIT(NAME)[\N
\ ;\!EVAL((\←=)\!CITNUM(⊗NAME⊗);(;));\N get number of citation
\ ;\!COMPAC;\N complement ac
\ ;\?DEFCURCIT(⊗NAME⊗);\N assign new cit numb
\ ;\!CITNUM(⊗NAME⊗);\N print out cit numb
\ ;]\;
\;
\8DEFCURCIT(NAME)[\N increment CURCIT and assign to name
\ ;\!INCR(CURCIT);\N increment CURCIT
\ ;\!EVAL((\∞)⊗NAME⊗(CITNUM[)\!CURCIT;(]));\N
\ ;\N assign to name
\ ;\!EVAL((\∞CITNUM)\!CURCIT;([)⊗NAME⊗(]));\N
\ ;]\;
\;
\8CITNUM(NAME)[\!⊗NAME⊗CITNUM;]\;
\;
\8NTHCIT(NUM)[\!CITNUM⊗NUM⊗;]\;
\;
\8REFTEXT(NAME)[\!⊗NAME⊗REFTEXT;]\;
\;
\8PRINTREF(NUM)[\N
\ ;\!FMTREF([⊗NUM⊗],\!REFTEXT(\!NTHCIT(⊗NUM⊗);););]\;
\;
\∞PRINTREFS[\N
\ ;\P\QT\N
\ ;\←=0;\→T\N
\ ;\!LOADAC(CURCIT);\N
\ ;\IPRINTREFS1;\N
\ ;\qT\p]\;
\;
\∞PRINTREFS1[\N
\ ;\-=1;\N
\ ;\P\N
\ ;\←T\+=1;\→T\N
\ ;\!PRINTREF(\DT);\N
\ ;\p]\;
\;
\∞FN[\P\←N\+=1;\→N\∩\#\F7\DN\G\⊗\p]\;
\;
\8NOTE(TXT)[\P\←G\+=1;\→G\!FMTREF(\DG,(⊗TXT⊗));\p]\;
\;
\,
\@INTRO;\N
\!PRINTREFS;\;
\;\!PRINTREFS;\;
\!EVAL((\m{)\A=13;\A=10;(}));\N type crlf
\!EVAL((\m{)\!LOADAC(PAGNUM);\D∀( )(}));\N type page num
\>=1;\; close alternate output file
\⊃'000100;\; VEREVE - turn off EVERYPAGE macro
\@CONTEN.TMP;\N